home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / a_utils / ffccflow / ffccflow.lha / ffccc+flow / ffccc / COMRUL.f < prev    next >
Text File  |  1992-07-31  |  3KB  |  58 lines

  1.       SUBROUTINE COMRUL 
  2.       include 'CHECKS.h' 
  3.       CCHECK(1) ='Avoid comment lines after end of program unit'
  4.       CCHECK(2) ='End all program program units with the END statement' 
  5.       CCHECK(3) =   
  6.      & 'Declared COMMON blocks must be used in the program unit'
  7.       CCHECK(4) ='COMPLEX and DOUBLEPRECISION vars at end of COMMON'
  8.       CCHECK(5) ='COMMON block definitions should not change'   
  9.       CCHECK(6) ='Variable names should be 6 or fewer characters long'  
  10.       CCHECK(7) ='Variables in COMMON should be 6 characters long'  
  11.       CCHECK(8) ='Variables not in COMMON should be <6 characters'  
  12.       CCHECK(9) ='Integer variables should begin with I to N'   
  13.       CCHECK(10)='Variable names should not equal FORTRAN keywords' 
  14.       CCHECK(11)='Avoid comment lines before header line'   
  15.       CCHECK(12)=   
  16.      &'Program unit names should not equal intrinsic function names'
  17.       CCHECK(13)=   
  18.      &'First statement in a program unit should be header line' 
  19.       CCHECK(14)=   
  20.      &'Program unit should begin with at least 3 comment lines' 
  21.       CCHECK(15)='Comment lines should begin with a C'  
  22.       CCHECK(16)='No comment lines between continuations'   
  23.       CCHECK(17)='Avoid non-standard variable types eg INTEGER*2'   
  24.       CCHECK(18)='Avoid multiple COMMON definitions per line'   
  25.       CCHECK(19)='Do not dimension COMMON variables outside COMMON' 
  26.       CCHECK(20)='Avoid embedded blanks in variable names'  
  27.       CCHECK(21)='Avoid embedded blanks in syntactic entities'  
  28.       CCHECK(22)='Avoid the use of PRINT statements (use WRITE)'
  29.       CCHECK(23)='Do not give the END statement a label'
  30.       CCHECK(24)='Avoid WRITE(* construction'   
  31.       CCHECK(25)='Avoid WRITE statement in a FUNCTION'  
  32.       CCHECK(26)='Avoid the use of PAUSE statements'
  33.       CCHECK(27)='Statement labels should not begin in column 1'
  34.       CCHECK(28)='Always precede STOP by a descriptive WRITE'   
  35.       CCHECK(29)='Avoid the use of ENTRY in FUNCTIONS'  
  36.       CCHECK(30)='Avoid using I/O in FUNCTIONs' 
  37.       CCHECK(31)='Avoid the use of the alternate RETURN statement'  
  38.       CCHECK(32)='COMMON block names should not equal variable names'   
  39.       CCHECK(33)='Avoid use of obsolete CERN library routines'  
  40.       CCHECK(34)='Avoid FUNCTION names the same as intrinsics'  
  41.       CCHECK(35)='Local functions should be declared EXTERNAL'  
  42.       CCHECK(36)='program unit names should all be different'   
  43.       CCHECK(37)='Avoid expressions of mixed mode eg A=B/I' 
  44.       CCHECK(38)='Length of passed CHARACTER variables should be *' 
  45.       CCHECK(39)='Order of statements should conform to note'   
  46.       CCHECK(40)='Separate Statement Functions by comment lines'
  47.       CCHECK(41)='No names in Statement Function definitions elsewhere' 
  48.       CCHECK(42)='Use LLT,LGT etc to compare CHARACTER vars. in IFs'
  49.       CCHECK(43)='Variables (not COMMON, not PARAMs) <6 characters' 
  50.       CCHECK(44)=   
  51.      & 'Passed arguments should be dimensioned * in program unit'   
  52.       DO 1 IRULE=45,MCHEKS  
  53.         CCHECK(IRULE) ='$$$$'   
  54.         LCHECK(IRULE) =.FALSE.  
  55.     1 CONTINUE  
  56.       RETURN
  57.       END   
  58.